<?php

class loja_produto_relacionadoModel extends Model{
    
    protected $tabela = "loja_produto_relacionado";
    protected $pkey   = array("cod_prod1", "cod_prod2");
    protected $dados  = array(
        
        'cod_prod1' => array(
            'pkey'      => true,
            'name'      => 'Produto',
            'type' 	=> 'int',
            'notnull'   => true,
            'fkey'      => array(
                'model'    => 'loja/produto', 
                'keys'     => array('cod_produto', 'pnome'),
                'cardinalidade' => '1n'
            )
         ),
        'cod_prod2' => array(
            'pkey'      => true,
            'name'      => 'Produto Relacionado',
            'type' 	=> 'int',
            'notnull'   => true,
            'fkey'      => array(
                'model'    => 'loja/produto', 
                'keys'     => array('cod_produto', 'pnome'),
                'cardinalidade' => '1n'
            )
         ),
        'sistema' => array(
            'name'      => 'Sistema',
            'type'      => 'enum',
            'default'   => 'usuario',
            'options'   => array(
                'sistema' => 'Sistema',
                'usuario' => 'Usuário',
            )
       	 ),
        'qtd' => array(
            'name'      => 'Acessos',
            'type'      => 'int',
            'especial'  => 'hide'
       	 )
    );
    
    public function selecionar($campos = array(), $where = "", $limit = "", $offset = "", $orderby = ""){
        return parent::selecionar($campos, $where, $limit, $offset, "`qtd` DESC");
    }
    
    public function getCount(){
        $this->LoadModel("loja/produto", "lprod");
    	return $this->lprod->getCount();
    }
    
    public function inserirBySystem($cod_prod1, $cod_prod2){
        if($cod_prod1 == $cod_prod2)             return true;
        if($cod_prod1 == "" || $cod_prod2 == "") return true;
        
        $where = "`cod_prod1` = '$cod_prod1' AND `cod_prod2` = '$cod_prod2'";
        $item  = $this->selecionar(array(), $where, 1);
        $item  = array_shift($item);
        if(empty ($item)){
            $dados = array(
                'cod_prod1' => $cod_prod1,
                'cod_prod2' => $cod_prod2,
                'sistema'   => "sistema"
             );
             return parent::inserir($dados);
        }else{
            $item['qtd']++;
            $dados = array(
                'qtd'   => $item['qtd']
             );
            return parent::editar(array($cod_prod1, $cod_prod2), $dados);
        }
    }
    
}

?>
